package com.huatec.dao;

import com.huatec.entity.Student;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface StudentDao {
    /**
     * 根据Id查询学生
     *
     * @param id
     * @return
     */
    Student queryById(int id);

    /**
     * 查询所有学生
     *
     * @param offset 页码
     * @param limit  每页条数
     * @return
     */
    List<Student> queryAll(@Param("offset") int offset, @Param("limit") int limit);

    /**
     * 根据特定条件查询学生
     *
     * @param sql
     * @return
     */
    List<Student> queryByWhereSql(String sql);

    /**
     * 新增学生
     *
     * @return
     */
    int addStudent(Student student);

    /**
     * 删除学生
     *
     * @param id-学生id
     * @return
     */
    int deleteStudent(int id);

    /**
     * 修改学生
     *
     * @return
     */
    int modifyStudent(Student student);

    List<Student> findByClassId(int classId);

    Student findByName(String username);

    Student findByNum(String studentNum);

}
